home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / tstrings.zip / TSTR.DOC < prev    next >
Text File  |  1991-12-10  |  4KB  |  126 lines

  1. unit tStrings; {Null terminated Strings unit for  Turbo Pascal 6}
  2.  
  3.  
  4. {Throughout the documentation 'String' refers to a null
  5. terminated
  6.  string apart from 'Pascal Style String' which refers to the
  7. standard
  8.  counted string type}
  9.  
  10.  
  11. type
  12.  PTChar = ^TChar;
  13.  TChar = array[0..65520] of char;
  14.  
  15.  
  16. function  locase(aChar : Char) : Char;
  17.  {Convert the Character aChar to lower Case}
  18.  
  19. function  StrCat(aDest,aSource : pChar) : pChar;
  20.  {Concatenate aSource onto aDest and return a pointer to aDest}
  21.  
  22. function  StrComp(Str1,Str2 : pChar) : integer;
  23.  {Compare Str1 with Str2
  24.   if Str1<Str2 then StrComp < 0
  25.      Str1=Str2 then StrComp = 0
  26.      Str1>Str2 then StrComp > 0
  27.   }
  28.  
  29. function  StrCopy(aDest,aSource : PChar) : PChar;
  30.   { Copy the contents of aSource to aDest and return a pointer to
  31. aDest}
  32.  
  33. function  StrCSpn(Str1,Str2 : pChar) : integer;
  34.   { ***Not in windows Strings Unit
  35.     Returns the length of the String starting at Str1 that
  36. consists
  37.     entirely of characters not in Str2}
  38.  
  39. function  StrDispose(Var aChar : PChar) : pChar;
  40.     {Disposes of a string allocated with StrNew
  41.      EVEN IF the length has changed}
  42.  
  43. function  StrECopy(aDest,aSource : pChar) : pChar;
  44.     {Copies a string from aSource to aDest and returns a pointer
  45. to
  46.      the end of the string in aDest}
  47.  
  48. function  StrEnd(aSource : pChar) : pChar;
  49.     {Returns a pointer to then end of the String in aSource
  50.      (in fact a pointer to the null  terminator)}
  51.  
  52. function  StrIComp(Str1,Str2 : pChar) : integer;
  53.     {Case insensitive compare
  54.      if Str1<Str2 then StrIComp < 0
  55.      Str1=Str2 then StrIComp = 0
  56.      Str1>Str2 then StrIComp > 0
  57.   }
  58.  
  59. function  StrLCat(aDest,aSource : pChar;MaxLen : Word) : pChar;
  60.      {Concatenates the string aSource onto aDest. The string in
  61.       aDest will not become longer than Maxlen. The value
  62. returned
  63.       by StrLCat is a pointer to aDest}
  64.  
  65. function  StrLComp(str1,str2 : pChar; MaxLen : Word) : integer;
  66.      {Compares two strings up to a maximum length of Maxlen.
  67.        if Str1<Str2 then StrLComp < 0
  68.      Str1=Str2 then StrLComp = 0
  69.      Str1>Str2 then StrLComp > 0
  70.      If the strings have not differed up to Length Maxlen then
  71.      StrLComp=0}
  72.  
  73. function  StrLCopy(aDest,aSource : pChar;Maxlen : Word) : pChar;
  74.      {Copies string aSource to aDest up to a maximum length
  75.       MaxLen. Returns a pointer to aDest}
  76.  
  77. function  StrLen(aBuffer : PChar) : Integer;
  78.      { Returns the length of String aBuffer}
  79.  
  80. function  StrLIComp(Str1,Str2 : pChar;MaxLen : Word) : Integer;
  81.      { Case Insensitive Compare of strings up to MaxLen
  82.        in length}
  83.  
  84. function  Strlower(aBuffer : pChar) : pChar;
  85.      { Converts the entire string to lower case}
  86.  
  87. function  StrMove(aDest,aSource : pChar;Count : Word) : pChar;
  88.      { Copies 'count' bytes from aSource to aDest}
  89.  
  90. function  StrNew(aBuffer : Pchar) : PChar;
  91.      { Allocates space on the heap large enough for aBuffer and
  92.        then copies aBuffer into the new string. Returns a pointer
  93. to
  94.        the new string}
  95.  
  96. function  StrPas(aBuffer : Pchar) : String;
  97.      { Copies from a null terminated string to a pascal style
  98.        string}
  99.  
  100. function  StrPCopy(aDest : pChar;aSource : String) : pChar;
  101.      { Copies from a pascal style string to a null terminated
  102. string}
  103.  
  104. function  StrPos(Str1,Str2 : pChar) : Pchar;
  105.      { Returns a pointer to the first occurrence of a string
  106.        in another string. If the string Str2 does not exist
  107.        in Str1 then the function returns nil}
  108.  
  109. function  StrRScan(Str : pChar;Chr : Char) : pChar;
  110.        {Finds the last occurrence of character Chr in String Str.
  111.         If Chr does not exist in Str then returns a nil}
  112.  
  113. function  StrScan(Str : pChar; Chr : Char) : pChar;
  114.        {Finds the first occurrence of character Chr in String
  115. Str.
  116.         If Chr does not exist in Str then returns a nil}
  117.  
  118. function  StrSpn(Str1,Str2 : pChar) : integer;
  119.        {Returns the length of string Str1 that consists entirely
  120.         of characters from Str2}
  121.  
  122. function  StrUpper(aBuffer : pChar) : pChar;
  123.        {Converts the entire string 'aBuffer' to upper case
  124.         return a pointer to the start of the string}
  125.  
  126.